ಕನ್ನಡ

ಆಧುನಿಕ ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್‌ಗಳಿಗೆ ಶಕ್ತಿ ನೀಡುವ ಮೂಲಭೂತ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಅಲ್ಗಾರಿದಮ್‌ಗಳನ್ನು ಅನ್ವೇಷಿಸಿ, ಜಾಗತಿಕವಾಗಿ ಮೆಮೊರಿ ನಿರ್ವಹಣೆ ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್ ಕಾರ್ಯಕ್ಷಮತೆಗೆ ಇದು ನಿರ್ಣಾಯಕವಾಗಿದೆ.

ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್ಸ್: ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಅಲ್ಗಾರಿದಮ್‌ಗಳ ಒಂದು ಆಳವಾದ ನೋಟ

ಕಂಪ್ಯೂಟಿಂಗ್‌ನ ಜಟಿಲ ಜಗತ್ತಿನಲ್ಲಿ, ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್‌ಗಳು ನಮ್ಮ ಸಾಫ್ಟ್‌ವೇರ್‌ಗೆ ಜೀವ ತುಂಬುವ ಅದೃಶ್ಯ ಇಂಜಿನ್‌ಗಳಾಗಿವೆ. ಅವು ಸಂಪನ್ಮೂಲಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ, ಕೋಡ್ ಅನ್ನು ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತವೆ, ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ಸುಗಮ ಕಾರ್ಯಾಚರಣೆಯನ್ನು ಖಚಿತಪಡಿಸುತ್ತವೆ. ಅನೇಕ ಆಧುನಿಕ ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್‌ಗಳ ಹೃದಯಭಾಗದಲ್ಲಿ ಒಂದು ನಿರ್ಣಾಯಕ ಅಂಶವಿದೆ: ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ (ಜಿಸಿ). ಜಿಸಿ ಎಂದರೆ ಅಪ್ಲಿಕೇಶನ್‌ನಿಂದ ಇನ್ನು ಮುಂದೆ ಬಳಕೆಯಾಗದ ಮೆಮೊರಿಯನ್ನು ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಹಿಂಪಡೆಯುವ ಪ್ರಕ್ರಿಯೆ. ಇದು ಮೆಮೊರಿ ಲೀಕ್‌ಗಳನ್ನು ತಡೆಯುತ್ತದೆ ಮತ್ತು ಸಂಪನ್ಮೂಲಗಳ ದಕ್ಷ ಬಳಕೆಯನ್ನು ಖಾತ್ರಿಪಡಿಸುತ್ತದೆ.

ಜಗತ್ತಿನಾದ್ಯಂತ ಡೆವಲಪರ್‌ಗಳಿಗೆ, ಜಿಸಿ ಯನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಕೇವಲ ಕ್ಲೀನ್ ಕೋಡ್ ಬರೆಯುವುದಕ್ಕೆ ಸೀಮಿತವಲ್ಲ; ಇದು ದೃಢವಾದ, ಕಾರ್ಯಕ್ಷಮತೆಯುಳ್ಳ, ಮತ್ತು ಸ್ಕೇಲೆಬಲ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುವುದರ ಬಗ್ಗೆ. ಈ ಸಮಗ್ರ ಪರಿಶೋಧನೆಯು ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್‌ಗೆ ಶಕ್ತಿ ನೀಡುವ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳು ಮತ್ತು ವಿವಿಧ ಅಲ್ಗಾರಿದಮ್‌ಗಳನ್ನು ಆಳವಾಗಿ ಪರಿಶೀಲಿಸುತ್ತದೆ, ಇದು ವಿವಿಧ ತಾಂತ್ರಿಕ ಹಿನ್ನೆಲೆಯ ವೃತ್ತಿಪರರಿಗೆ ಮೌಲ್ಯಯುತ ಒಳನೋಟಗಳನ್ನು ನೀಡುತ್ತದೆ.

ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯ ಅನಿವಾರ್ಯತೆ

ನಿರ್ದಿಷ್ಟ ಅಲ್ಗಾರಿದಮ್‌ಗಳ ಬಗ್ಗೆ ತಿಳಿಯುವ ಮೊದಲು, ಮೆಮೊರಿ ನಿರ್ವಹಣೆ ಏಕೆ ಅಷ್ಟು ನಿರ್ಣಾಯಕ ಎಂಬುದನ್ನು ಗ್ರಹಿಸುವುದು ಅತ್ಯಗತ್ಯ. ಸಾಂಪ್ರದಾಯಿಕ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮಾದರಿಗಳಲ್ಲಿ, ಡೆವಲಪರ್‌ಗಳು ಹಸ್ತಚಾಲಿತವಾಗಿ ಮೆಮೊರಿಯನ್ನು ಹಂಚಿಕೆ ಮಾಡುತ್ತಾರೆ ಮತ್ತು ಬಿಡುಗಡೆ ಮಾಡುತ್ತಾರೆ. ಇದು ಉತ್ತಮ ನಿಯಂತ್ರಣವನ್ನು ನೀಡಿದರೂ, ಇದು ದೋಷಗಳ ಕುಖ್ಯಾತ ಮೂಲವಾಗಿದೆ:

ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಮೂಲಕ ಸ್ವಯಂಚಾಲಿತ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯು ಈ ಹೊರೆಗಳನ್ನು ನಿವಾರಿಸುವ ಗುರಿಯನ್ನು ಹೊಂದಿದೆ. ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್ ಬಳಕೆಯಾಗದ ಮೆಮೊರಿಯನ್ನು ಗುರುತಿಸುವ ಮತ್ತು ಹಿಂಪಡೆಯುವ ಜವಾಬ್ದಾರಿಯನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ, ಇದರಿಂದ ಡೆವಲಪರ್‌ಗಳು ಕೆಳಮಟ್ಟದ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯ ಬದಲು ಅಪ್ಲಿಕೇಶನ್ ತರ್ಕದ ಮೇಲೆ ಗಮನ ಹರಿಸಬಹುದು. ಜಾಗತಿಕ ಸಂದರ್ಭದಲ್ಲಿ ಇದು ವಿಶೇಷವಾಗಿ ಮುಖ್ಯವಾಗಿದೆ, ಅಲ್ಲಿ ವೈವಿಧ್ಯಮಯ ಹಾರ್ಡ್‌ವೇರ್ ಸಾಮರ್ಥ್ಯಗಳು ಮತ್ತು ನಿಯೋಜನೆ ಪರಿಸರಗಳಿಗೆ ಸ್ಥಿತಿಸ್ಥಾಪಕ ಮತ್ತು ದಕ್ಷ ಸಾಫ್ಟ್‌ವೇರ್ ಅಗತ್ಯವಿರುತ್ತದೆ.

ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್‌ನಲ್ಲಿ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳು

ಹಲವಾರು ಮೂಲಭೂತ ಪರಿಕಲ್ಪನೆಗಳು ಎಲ್ಲಾ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಅಲ್ಗಾರಿದಮ್‌ಗಳಿಗೆ ಆಧಾರವಾಗಿವೆ:

1. ತಲುಪುವಿಕೆ (Reachability)

ಹೆಚ್ಚಿನ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್‌ಗಳ ಪ್ರಮುಖ ತತ್ವವೆಂದರೆ ತಲುಪುವಿಕೆ. ಒಂದು ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ತಲುಪಬಲ್ಲದು ಎಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ, ಒಂದು ವೇಳೆ ತಿಳಿದಿರುವ, "ಲೈವ್" ರೂಟ್‌ಗಳ ಸೆಟ್‌ನಿಂದ ಆ ಆಬ್ಜೆಕ್ಟ್‌ಗೆ ಒಂದು ಮಾರ್ಗವಿದ್ದರೆ. ರೂಟ್‌ಗಳು ಸಾಮಾನ್ಯವಾಗಿ ಇವುಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತವೆ:

ಈ ರೂಟ್‌ಗಳಿಂದ ತಲುಪಲು ಸಾಧ್ಯವಾಗದ ಯಾವುದೇ ಆಬ್ಜೆಕ್ಟ್ ಅನ್ನು ಗಾರ್ಬೇಜ್ ಎಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ ಮತ್ತು ಅದನ್ನು ಹಿಂಪಡೆಯಬಹುದು.

2. ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಚಕ್ರ

ಒಂದು ವಿಶಿಷ್ಟ ಜಿಸಿ ಚಕ್ರವು ಹಲವಾರು ಹಂತಗಳನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ:

3. ವಿರಾಮಗಳು (Pauses)

ಜಿಸಿ ಯಲ್ಲಿನ ಒಂದು ಮಹತ್ವದ ಸವಾಲು ಸ್ಟಾಪ್-ದಿ-ವರ್ಲ್ಡ್ (STW) ವಿರಾಮಗಳು. ಈ ವಿರಾಮಗಳ ಸಮಯದಲ್ಲಿ, ಅಪ್ಲಿಕೇಶನ್‌ನ ಕಾರ್ಯನಿರ್ವಹಣೆಯನ್ನು ನಿಲ್ಲಿಸಲಾಗುತ್ತದೆ, ಇದರಿಂದ ಜಿಸಿ ತನ್ನ ಕಾರ್ಯಗಳನ್ನು ಯಾವುದೇ ಅಡಚಣೆಯಿಲ್ಲದೆ ನಿರ್ವಹಿಸಬಹುದು. ದೀರ್ಘವಾದ STW ವಿರಾಮಗಳು ಅಪ್ಲಿಕೇಶನ್ ಸ್ಪಂದನಶೀಲತೆಯ ಮೇಲೆ ಗಮನಾರ್ಹವಾಗಿ ಪರಿಣಾಮ ಬೀರಬಹುದು, ಇದು ಯಾವುದೇ ಜಾಗತಿಕ ಮಾರುಕಟ್ಟೆಯಲ್ಲಿ ಬಳಕೆದಾರ-ಮುಖಿ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ನಿರ್ಣಾಯಕ ಕಾಳಜಿಯಾಗಿದೆ.

ಪ್ರಮುಖ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಅಲ್ಗಾರಿದಮ್‌ಗಳು

ವರ್ಷಗಳಲ್ಲಿ, ವಿವಿಧ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್‌ಗಳನ್ನು ಅಭಿವೃದ್ಧಿಪಡಿಸಲಾಗಿದೆ, ಪ್ರತಿಯೊಂದಕ್ಕೂ ತನ್ನದೇ ಆದ ಸಾಮರ್ಥ್ಯಗಳು ಮತ್ತು ದೌರ್ಬಲ್ಯಗಳಿವೆ. ನಾವು ಕೆಲವು ಪ್ರಚಲಿತವಾದವುಗಳನ್ನು ಅನ್ವೇಷಿಸೋಣ:

1. ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್

ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್ ಅಲ್ಗಾರಿದಮ್ ಅತ್ಯಂತ ಹಳೆಯ ಮತ್ತು ಮೂಲಭೂತ ಜಿಸಿ ತಂತ್ರಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಇದು ಎರಡು ವಿಭಿನ್ನ ಹಂತಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ:

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಜಾವಾದ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಟರ್‌ನ ಆರಂಭಿಕ ಆವೃತ್ತಿಗಳು ಮೂಲಭೂತ ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್ ವಿಧಾನವನ್ನು ಬಳಸುತ್ತಿದ್ದವು.

2. ಮಾರ್ಕ್-ಅಂಡ್-ಕಾಂಪ್ಯಾಕ್ಟ್

ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್‌ನ ಫ್ರಾಗ್ಮೆಂಟೇಶನ್ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸಲು, ಮಾರ್ಕ್-ಅಂಡ್-ಕಾಂಪ್ಯಾಕ್ಟ್ ಅಲ್ಗಾರಿದಮ್ ಮೂರನೇ ಹಂತವನ್ನು ಸೇರಿಸುತ್ತದೆ:

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಈ ವಿಧಾನವು ಅನೇಕ ಮುಂದುವರಿದ ಕಲೆಕ್ಟರ್‌ಗಳಿಗೆ ಮೂಲಭೂತವಾಗಿದೆ.

3. ಕಾಪಿಯಿಂಗ್ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್

ಕಾಪಿಯಿಂಗ್ ಜಿಸಿ ಹೀಪ್ ಅನ್ನು ಎರಡು ಜಾಗಗಳಾಗಿ ವಿಂಗಡಿಸುತ್ತದೆ: ಫ್ರಮ್-ಸ್ಪೇಸ್ ಮತ್ತು ಟು-ಸ್ಪೇಸ್. ಸಾಮಾನ್ಯವಾಗಿ, ಹೊಸ ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ಫ್ರಮ್-ಸ್ಪೇಸ್‌ನಲ್ಲಿ ಹಂಚಲಾಗುತ್ತದೆ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಜನರೇಷನಲ್ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಟರ್‌ಗಳಲ್ಲಿ 'ಯಂಗ್' ಜನರೇಷನ್ ಸಂಗ್ರಹಿಸಲು ಇದನ್ನು ಹೆಚ್ಚಾಗಿ ಬಳಸಲಾಗುತ್ತದೆ.

4. ಜನರೇಷನಲ್ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್

ಈ ವಿಧಾನವು ಜನರೇಷನಲ್ ಹೈಪೋಥಿಸಿಸ್ ಅನ್ನು ಆಧರಿಸಿದೆ, ಇದು ಹೆಚ್ಚಿನ ಆಬ್ಜೆಕ್ಟ್‌ಗಳು ಬಹಳ ಕಡಿಮೆ ಜೀವಿತಾವಧಿಯನ್ನು ಹೊಂದಿರುತ್ತವೆ ಎಂದು ಹೇಳುತ್ತದೆ. ಜನರೇಷನಲ್ ಜಿಸಿ ಹೀಪ್ ಅನ್ನು ಬಹು ತಲೆಮಾರುಗಳಾಗಿ ವಿಂಗಡಿಸುತ್ತದೆ:

ಇದು ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತದೆ:

  1. ಹೊಸ ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ಯಂಗ್ ಜನರೇಷನ್‌ನಲ್ಲಿ ಹಂಚಲಾಗುತ್ತದೆ.
  2. ಮೈನರ್ ಜಿಸಿಗಳನ್ನು (ಸಾಮಾನ್ಯವಾಗಿ ಕಾಪಿಯಿಂಗ್ ಕಲೆಕ್ಟರ್ ಬಳಸಿ) ಯಂಗ್ ಜನರೇಷನ್‌ನಲ್ಲಿ ಆಗಾಗ್ಗೆ ನಡೆಸಲಾಗುತ್ತದೆ. ಉಳಿದುಕೊಂಡ ಆಬ್ಜೆಕ್ಟ್‌ಗಳನ್ನು ಓಲ್ಡ್ ಜನರೇಷನ್‌ಗೆ ಬಡ್ತಿ ನೀಡಲಾಗುತ್ತದೆ.
  3. ಮೇಜರ್ ಜಿಸಿಗಳನ್ನು ಓಲ್ಡ್ ಜನರೇಷನ್‌ನಲ್ಲಿ ಕಡಿಮೆ ಆಗಾಗ್ಗೆ ನಡೆಸಲಾಗುತ್ತದೆ, ಸಾಮಾನ್ಯವಾಗಿ ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್ ಅಥವಾ ಮಾರ್ಕ್-ಅಂಡ್-ಕಾಂಪ್ಯಾಕ್ಟ್ ಬಳಸಿ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಜಾವಾ ವರ್ಚುವಲ್ ಮೆಷಿನ್ (ಜೆವಿಎಂ) ಜನರೇಷನಲ್ ಜಿಸಿ ಯನ್ನು ವ್ಯಾಪಕವಾಗಿ ಬಳಸುತ್ತದೆ (ಉದಾ. ಥ್ರೂಪುಟ್ ಕಲೆಕ್ಟರ್, ಸಿಎಂಎಸ್, ಜಿ1, ಝೆಡ್‌ಜಿಸಿ).

5. ರೆಫರೆನ್ಸ್ ಕೌಂಟಿಂಗ್

ತಲುಪುವಿಕೆಯನ್ನು ಟ್ರೇಸ್ ಮಾಡುವ ಬದಲು, ರೆಫರೆನ್ಸ್ ಕೌಂಟಿಂಗ್ ಪ್ರತಿಯೊಂದು ಆಬ್ಜೆಕ್ಟ್‌ಗೆ ಒಂದು ಕೌಂಟ್ ಅನ್ನು ಸಂಯೋಜಿಸುತ್ತದೆ, ಇದು ಅದಕ್ಕೆ ಎಷ್ಟು ರೆಫರೆನ್ಸ್‌ಗಳು ಪಾಯಿಂಟ್ ಮಾಡುತ್ತವೆ ಎಂಬುದನ್ನು ಸೂಚಿಸುತ್ತದೆ. ಒಂದು ಆಬ್ಜೆಕ್ಟ್‌ನ ರೆಫರೆನ್ಸ್ ಕೌಂಟ್ ಶೂನ್ಯಕ್ಕೆ ಇಳಿದಾಗ ಅದನ್ನು ಗಾರ್ಬೇಜ್ ಎಂದು ಪರಿಗಣಿಸಲಾಗುತ್ತದೆ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಸ್ವಿಫ್ಟ್ (ARC - ಆಟೋಮ್ಯಾಟಿಕ್ ರೆಫರೆನ್ಸ್ ಕೌಂಟಿಂಗ್), ಪೈಥಾನ್ ಮತ್ತು ಆಬ್ಜೆಕ್ಟಿವ್-ಸಿ ಯಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ.

6. ಇನ್‌ಕ್ರಿಮೆಂಟಲ್ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್

STW ವಿರಾಮದ ಸಮಯವನ್ನು ಮತ್ತಷ್ಟು ಕಡಿಮೆ ಮಾಡಲು, ಇನ್‌ಕ್ರಿಮೆಂಟಲ್ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್‌ಗಳು ಜಿಸಿ ಕೆಲಸವನ್ನು ಸಣ್ಣ ತುಣುಕುಗಳಲ್ಲಿ ನಿರ್ವಹಿಸುತ್ತವೆ, ಜಿಸಿ ಕಾರ್ಯಾಚರಣೆಗಳನ್ನು ಅಪ್ಲಿಕೇಶನ್ ಎಕ್ಸಿಕ್ಯೂಶನ್‌ನೊಂದಿಗೆ ಬೆರೆಸುತ್ತವೆ. ಇದು ವಿರಾಮದ ಸಮಯವನ್ನು ಚಿಕ್ಕದಾಗಿಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಹಳೆಯ ಜೆವಿಎಂ ಆವೃತ್ತಿಗಳಲ್ಲಿನ ಕನ್ಕರೆಂಟ್ ಮಾರ್ಕ್ ಸ್ವೀಪ್ (ಸಿಎಂಎಸ್) ಕಲೆಕ್ಟರ್ ಇನ್‌ಕ್ರಿಮೆಂಟಲ್ ಕಲೆಕ್ಷನ್‌ನ ಆರಂಭಿಕ ಪ್ರಯತ್ನವಾಗಿತ್ತು.

7. ಕನ್ಕರೆಂಟ್ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್

ಕನ್ಕರೆಂಟ್ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್‌ಗಳು ತಮ್ಮ ಹೆಚ್ಚಿನ ಕೆಲಸವನ್ನು ಅಪ್ಲಿಕೇಶನ್ ಥ್ರೆಡ್‌ಗಳೊಂದಿಗೆ ಏಕಕಾಲದಲ್ಲಿ ನಿರ್ವಹಿಸುತ್ತವೆ. ಇದರರ್ಥ ಜಿಸಿ ಮೆಮೊರಿಯನ್ನು ಗುರುತಿಸುತ್ತಿರುವಾಗ ಮತ್ತು ಹಿಂಪಡೆಯುತ್ತಿರುವಾಗ ಅಪ್ಲಿಕೇಶನ್ ಚಾಲನೆಯಲ್ಲಿರುತ್ತದೆ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಜಾವಾದಲ್ಲಿನ ಜಿ1, ಝೆಡ್‌ಜಿಸಿ, ಮತ್ತು ಶೆನನ್‌ಡೋವಾದಂತಹ ಆಧುನಿಕ ಕಲೆಕ್ಟರ್‌ಗಳು, ಮತ್ತು ಗೋ ಹಾಗೂ .ನೆಟ್ ಕೋರ್‌ನಲ್ಲಿನ ಜಿಸಿ ಹೆಚ್ಚು ಕನ್ಕರೆಂಟ್ ಆಗಿವೆ.

8. ಜಿ1 (ಗಾರ್ಬೇಜ್-ಫಸ್ಟ್) ಕಲೆಕ್ಟರ್

ಜಾವಾ 7 ರಲ್ಲಿ ಪರಿಚಯಿಸಲಾದ ಮತ್ತು ಜಾವಾ 9 ರಲ್ಲಿ ಡೀಫಾಲ್ಟ್ ಆದ ಜಿ1 ಕಲೆಕ್ಟರ್, ಥ್ರೂಪುಟ್ ಮತ್ತು ಲೇಟೆನ್ಸಿಯನ್ನು ಸಮತೋಲನಗೊಳಿಸಲು ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಸರ್ವರ್-ಶೈಲಿಯ, ರೀಜನ್-ಆಧಾರಿತ, ಜನರೇಷನಲ್, ಮತ್ತು ಕನ್ಕರೆಂಟ್ ಕಲೆಕ್ಟರ್ ಆಗಿದೆ.

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಅನೇಕ ಆಧುನಿಕ ಜಾವಾ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ಡೀಫಾಲ್ಟ್ ಜಿಸಿ.

9. ಝೆಡ್‌ಜಿಸಿ ಮತ್ತು ಶೆನನ್‌ಡೋವಾ

ಇವು ಅತ್ಯಂತ ಕಡಿಮೆ ವಿರಾಮ ಸಮಯಕ್ಕಾಗಿ ವಿನ್ಯಾಸಗೊಳಿಸಲಾದ ಇತ್ತೀಚಿನ, ಸುಧಾರಿತ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಟರ್‌ಗಳಾಗಿವೆ, ಆಗಾಗ್ಗೆ ಉಪ-ಮಿಲಿಸೆಕೆಂಡ್ ವಿರಾಮಗಳನ್ನು ಗುರಿಯಾಗಿರಿಸಿಕೊಳ್ಳುತ್ತವೆ, ಅತಿ ದೊಡ್ಡ ಹೀಪ್‌ಗಳಲ್ಲೂ (ಟೆರಾಬೈಟ್‌ಗಳು).

ಅನುಕೂಲಗಳು:

ಅನಾನುಕೂಲಗಳು:

ಉದಾಹರಣೆ: ಝೆಡ್‌ಜಿಸಿ ಮತ್ತು ಶೆನನ್‌ಡೋವಾ ಓಪನ್‌ಜೆಡಿಕೆಯ ಇತ್ತೀಚಿನ ಆವೃತ್ತಿಗಳಲ್ಲಿ ಲಭ್ಯವಿದ್ದು, ಹಣಕಾಸು ಟ್ರೇಡಿಂಗ್ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ಗಳು ಅಥವಾ ಜಾಗತಿಕ ಪ್ರೇಕ್ಷಕರಿಗೆ ಸೇವೆ ಸಲ್ಲಿಸುವ ದೊಡ್ಡ ಪ್ರಮಾಣದ ವೆಬ್ ಸೇವೆಗಳಂತಹ ಲೇಟೆನ್ಸಿ-ಸೂಕ್ಷ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗೆ ಸೂಕ್ತವಾಗಿವೆ.

ವಿವಿಧ ರನ್ಟೈಮ್ ಪರಿಸರಗಳಲ್ಲಿ ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್

ತತ್ವಗಳು ಸಾರ್ವತ್ರಿಕವಾಗಿದ್ದರೂ, ಜಿಸಿಯ ಅನುಷ್ಠಾನ ಮತ್ತು ಸೂಕ್ಷ್ಮ ವ್ಯತ್ಯಾಸಗಳು ವಿವಿಧ ರನ್ಟೈಮ್ ಪರಿಸರಗಳಲ್ಲಿ ಭಿನ್ನವಾಗಿರುತ್ತವೆ:

ಸರಿಯಾದ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಆರಿಸುವುದು

ಸೂಕ್ತವಾದ ಜಿಸಿ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದು ಒಂದು ನಿರ್ಣಾಯಕ ನಿರ್ಧಾರವಾಗಿದ್ದು, ಇದು ಅಪ್ಲಿಕೇಶನ್ ಕಾರ್ಯಕ್ಷಮತೆ, ಸ್ಕೇಲೆಬಿಲಿಟಿ ಮತ್ತು ಬಳಕೆದಾರರ ಅನುಭವದ ಮೇಲೆ ಪರಿಣಾಮ ಬೀರುತ್ತದೆ. ಎಲ್ಲದಕ್ಕೂ ಒಂದೇ ಪರಿಹಾರವಿಲ್ಲ. ಈ ಅಂಶಗಳನ್ನು ಪರಿಗಣಿಸಿ:

ಜಿಸಿ ಆಪ್ಟಿಮೈಸೇಶನ್‌ಗಾಗಿ ಪ್ರಾಯೋಗಿಕ ಸಲಹೆಗಳು

ಸರಿಯಾದ ಅಲ್ಗಾರಿದಮ್ ಅನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದರ ಹೊರತಾಗಿ, ನೀವು ಜಿಸಿ ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಆಪ್ಟಿಮೈಜ್ ಮಾಡಬಹುದು:

ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್‌ನ ಭವಿಷ್ಯ

ಇನ್ನೂ ಕಡಿಮೆ ಲೇಟೆನ್ಸಿಗಳು ಮತ್ತು ಹೆಚ್ಚಿನ ದಕ್ಷತೆಯ ಅನ್ವೇಷಣೆ ಮುಂದುವರಿದಿದೆ. ಭವಿಷ್ಯದ ಜಿಸಿ ಸಂಶೋಧನೆ ಮತ್ತು ಅಭಿವೃದ್ಧಿಯು ಇವುಗಳ ಮೇಲೆ ಗಮನಹರಿಸುವ ಸಾಧ್ಯತೆಯಿದೆ:

ತೀರ್ಮಾನ

ಗಾರ್ಬೇಜ್ ಕಲೆಕ್ಷನ್ ಆಧುನಿಕ ರನ್ಟೈಮ್ ಸಿಸ್ಟಮ್‌ಗಳ ಮೂಲಾಧಾರವಾಗಿದೆ, ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ಸುಗಮವಾಗಿ ಮತ್ತು ದಕ್ಷವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಮೌನವಾಗಿ ಮೆಮೊರಿಯನ್ನು ನಿರ್ವಹಿಸುತ್ತದೆ. ಮೂಲಭೂತ ಮಾರ್ಕ್-ಅಂಡ್-ಸ್ವೀಪ್‌ನಿಂದ ಹಿಡಿದು ಅತಿ-ಕಡಿಮೆ-ಲೇಟೆನ್ಸಿಯ ಝೆಡ್‌ಜಿಸಿ ವರೆಗೆ, ಪ್ರತಿಯೊಂದು ಅಲ್ಗಾರಿದಮ್ ಮೆಮೊರಿ ನಿರ್ವಹಣೆಯನ್ನು ಉತ್ತಮಗೊಳಿಸುವಲ್ಲಿ ಒಂದು ವಿಕಸನೀಯ ಹಂತವನ್ನು ಪ್ರತಿನಿಧಿಸುತ್ತದೆ. ಜಗತ್ತಿನಾದ್ಯಂತದ ಡೆವಲಪರ್‌ಗಳಿಗೆ, ಈ ತಂತ್ರಗಳ ದೃಢವಾದ ತಿಳುವಳಿಕೆಯು ಅವರಿಗೆ ಹೆಚ್ಚು ಕಾರ್ಯಕ್ಷಮತೆಯುಳ್ಳ, ಸ್ಕೇಲೆಬಲ್, ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹ ಸಾಫ್ಟ್‌ವೇರ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಅಧಿಕಾರ ನೀಡುತ್ತದೆ, ಅದು ವೈವಿಧ್ಯಮಯ ಜಾಗತಿಕ ಪರಿಸರದಲ್ಲಿ ಅಭಿವೃದ್ಧಿ ಹೊಂದಬಲ್ಲದು. ವಹಿವಾಟುಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಂಡು ಮತ್ತು ಉತ್ತಮ ಅಭ್ಯಾಸಗಳನ್ನು ಅನ್ವಯಿಸುವ ಮೂಲಕ, ನಾವು ಮುಂದಿನ ಪೀಳಿಗೆಯ ಅಸಾಧಾರಣ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ರಚಿಸಲು ಜಿಸಿಯ ಶಕ್ತಿಯನ್ನು ಬಳಸಿಕೊಳ್ಳಬಹುದು.